package com.example.qt.ptplatform.service;

import com.example.qt.ptplatform.entity.Promotions;

import java.util.List;

public interface PromotionsService {
    long createPromotion(Promotions promotions);
    Promotions getPromotionDetails(long promotionId);

    // 获取促销活动列表，支持分页
    List<Promotions> getPromotionList(int page, int perPage);

    // 获取促销活动总条数
    long getPromotionCount();

    //删除促销活动
    boolean deletePromotion(long promotionId);

    /**
     * 获取最优惠的促销活动（下载量系数最小）
     * @param userId 用户ID
     * @param torrentId 种子ID
     * @return 最优惠的促销活动列表
     */
    List<Promotions> getBestDownloadPromo(Long userId, Long torrentId);

    /**
     * 获取最优惠的促销活动（上传量系数最大）
     * @param userId 用户ID
     * @return 最优惠的促销活动
     */
    Promotions getBestUploadPromo(Long userId);
}
